﻿#include "stdafx.h"
#include "Worker.h"

Worker::Worker(QObject *parent)
	: QObject(parent),
	m_bCancel(false)
{
	
}

Worker::~Worker()
{

}

void Worker::cancel()
{
	m_bCancel = true;
}

void Worker::stop()
{
	m_bCancel = true;
	emit finished();
}



// LoginWorker
/*
	返回值		描述
	0			登录成功
	1			登录失败，用户名或者密码错误
	2			用户主动取消登录
	3			登录超时，指定时间内未连接上服务器
	4			其他错误
*/
int LoginWorker::onLogin(QString strUserName, QString strPwd)
{
	m_bCancel = false;
	for (int i=0; i<1000000000 && !m_bCancel; i++)
	{

	}
	if (m_bCancel)
	{
		// 取消登录
		emit complete(2);
		return 2;
	}
	else
	{
		if (strUserName == tr("") && strPwd == tr(""))
		{
			// 登录成功
			emit complete(0);
			return 0;
		}
		else
		{
			// 用户名或者密码错误
			emit complete(1);
			return 1;
		}
	}
}
